1. Field
The present invention relates generally to communications, and more specifically to a novel and improved method and apparatus for generating a pseudorandom noise (PN) sequence composed of one or more PN sequences, with the ability to rapidly slew from one offset to another.
2. Background
Wireless communication systems are widely deployed to provide various types of communication such as voice, data, and so on. These systems may be based on code division multiple access (CDMA), time division multiple access (TDMA), or some other modulation techniques. A CDMA system provides certain advantages over other types of systems, including increased system capacity.
A CDMA system may be designed to support one or more CDMA standards such as (1) the xe2x80x9cTIA/EIA-95-B Mobile Station-Base Station Compatibility Standard for Dual-Mode Wideband Spread Spectrum Cellular Systemxe2x80x9d (the IS-95 standard), (2) the xe2x80x9cTIA/EIA-98-C Recommended Minimum Standard for Dual-Mode Wideband Spread Spectrum Cellular Mobile Stationxe2x80x9d (the IS-98 standard), (3) the standard offered by a consortium named xe2x80x9c3rd Generation Partnership Projectxe2x80x9d (3GPP) and embodied in a set of documents including Document Nos. 3G TS 25.211, 3G TS 25.212, 3G TS 25.213, and 3G TS 25.214 (the W-CDMA standard), (4) the standard offered by a consortium named xe2x80x9c3rd Generation Partnership Project 2xe2x80x9d (3GPP2) and embodied in a set of documents including xe2x80x9cTR-45.5 Physical Layer Standard for cdma2000 Spread Spectrum Systems,xe2x80x9d the xe2x80x9cC.S0005-A Upper Layer (Layer 3) Signaling Standard for cdma2000 Spread Spectrum Systems,xe2x80x9d and the xe2x80x9cC.S0024 cdma2000 High Rate Packet Data Air Interface Specificationxe2x80x9d (the cdma2000 standard), and (5) some other standards. These named standards are incorporated herein by reference. A system that implements the High Rate Packet Data specification of the cdma2000 standard is referred to herein as a high data rate (HDR) system. The HDR system is documented in TIA/EIA-IS-856, xe2x80x9cCDMA2000 High Rate Packet Data Air Interface Specificationxe2x80x9d, and incorporated herein by reference. Proposed wireless systems also provide a combination of HDR and low data rate services (such as voice and fax services) using a single air interface.
Pseudorandom noise (PN) sequences are commonly used in CDMA systems for spreading of transmitted data, including transmitted pilot signals. CDMA receivers commonly employ RAKE receivers. A rake receiver is typically made up of one or more searchers for locating direct and multipath pilots from neighboring base stations, and two or more multipath demodulators (fingers) for receiving and combining information signals from those base stations.
Inherent in the design of direct sequence CDMA systems is the requirement that a receiver must align its PN sequences to those of the base station. The time required to transmit a single value of the PN sequence is known as a chip, and the rate at which the chips vary is known as the chip rate. For example, in IS-95, each base station and subscriber unit uses the exact same PN sequences. A base station distinguishes itself from other base stations by inserting a unique time offset in the generation of its PN sequences. In IS-95 systems, all base stations are offset by an integer multiple of 64 chips. A subscriber unit communicates with a base station by assigning at least one finger to that base station. An assigned finger must insert the appropriate offset into its PN sequence in order to communicate with that base station. It is also possible to differentiate base stations by using unique PN sequences for each rather than offsets of the same PN sequence. In this case, fingers would adjust their PN generators to produce the appropriate PN sequence for the base station to which it is assigned. Adjusting the offset in the PN sequence is known as slewing.
An early CDMA PN generator commonly consisted of a linear feedback shift register (LFSR). When not slewing, the LFSR would be enabled once per chip to produce a new state and output a new chip in the PN sequence. To perform slewing, the LFSR would be either disabled to perform a retard, or enabled twice per chip to perform an advance. Thus, a simple PN generator might be capable of stewing in either direction at a rate of one chip per chip time. A slight improvement can be had if the clock rate of the LFSR is a higher rate, for example eight times the chip rate. Then, advances could be performed at a rate of eight chips per chip time (since the enable could be activated for all eight cycles occurring in a chip). Retards would still be limited to one per chip. Control logic can be added to such an LFSR based system such that slewing can be directed by simply providing an offset to the PN generator and a command to slew to that offset. While slewing in an early PN generator may have been performed by continuously moving the PN state, as just described, the term xe2x80x9cslewingxe2x80x9d is used generally throughout the following description to identify any process of producing a desired offset in a PN sequence.
Overall system performance is enhanced when each finger can rapidly align its PN sequence with the transmitted PN sequence. There are a variety of reasons for this. Upon initial acquisition, a fast slewing PN generator will reduce the time from finger assignment to demodulation. A searcher, so equipped, will be able to locate neighboring base stations sooner, and thus handoff will be more efficient and effective. Strong multipath signals that fade in and out rapidly are more likely to be demodulated and usefully combined when fingers can respond rapidly to changes in PN offset. Therefore, it is desirable to utilize PN sequences which can rapidly transition from one offset in a PN sequence to another.
One such PN generator is disclosed in U.S. Pat. No. 6,154,101 entitled xe2x80x9cFAST SLEWING PSEUDORANDOM NOISE SEQUENCE GENERATORxe2x80x9d, assigned to the assignee of the present invention. This PN generator provides rapid slewing for PN sequences generated from a single linear feedback shift register (LFSR), such as those required for IS-95 and similar systems. This PN generator contains an LFSR and a reference counter, each of which is loadable. A free-running counter is used to maintain a reference time and the desired offset is added to that reference time to provide a target location. A look-up table is then accessed to find the PN state and PN count corresponding to the target location. If the table is fully populated, then the PN count is simply the target location, and the associated PN state is retrieved. If the table is not fully populated, the target location may not exist in the table. In this case, the closest PN count value with an associated PN state is located. The PN state and the PN count are then loaded simultaneously into the LFSR and the reference counter. Hence, the PN generator has now instantaneously slewed to the offset given by the difference between the free-running counter and the PN count value. In IS-95, the I and Q PN sequences are generating from a single LFSR using different masks. Thus, this technique inherently keeps the I and Q PN sequences aligned.
There may be some residual slewing required to get the PN generator exactly to the desired offset given by the target location. One reason for this is that, as stated above, the look-up table may contain only a subset of the possible PN states, and so the instantaneous-load slew only gets close to the target. Another reason is that there may be a slightly variable time delay between reading the free-running counter, accessing the look-up table, and loading the results. This residual slewing can be accomplished with the traditional slewing methods described previously.
The previously described technique works excellently for PN sequences that can be generated using a single LFSR. There are other classes of PN sequences which themselves are generated from other PN sequences, such as Gold codes. The W-CDMA standard is an example of a CDMA system which uses Gold codes for I and Q PN spreading. A Gold code is generated by summing (XORing) the output of two LFSRs. The traditional slewing technique of asserting or de-asserting the enable signal of the LFSRs to advance or retard works for Gold codes as well, but suffers the same system-limiting issues described above.
The generalized fast-slewing technique just described can grow prohibitively expensive when support for many unique codes is required. Such is the case with W-CDMA PN sequences. There are 512 primary codes to support, plus an additional 15 secondary codes for each primary code. There are also two 18-bit LFSRs, so 36 bits need to be stored for each potential target offset. The size of the look-up table needed to support this example can quickly become quite large if support for a reasonable number of target offsets per sequence is desired. Furthermore, there are synchronization issues that are introduced when one or more LFSRs need to be loaded simultaneously.
There is therefore a need in the art for improved fast-slewing multi-sequence PN generation techniques to increase system performance and minimize associated hardware overhead.
Embodiments disclosed herein address the need for fast-slewing of multi-sequence based PN generators. In one aspect, LFSR states and reference counter states are loaded into their corresponding components such that consistency among the states is maintained. In another aspect, various methods for determining LFSR states and counter values in response to a desired offset in a unique code are disclosed. Among these methods are matrix-multiplication of LFSR states and generation of advanced LFSR states through masking techniques. Other methods are also presented. These aspects have the benefit of decreasing slew time in an efficient manner, which translates to increased acquisition speed, faster finger lock on multi-path signals, increased data throughput, decreased power, and improved overall system capacity. The techniques described herein apply equally to both access points and access terminals. Various other aspects of the invention are also presented.
The invention provides methods and system elements that implement various aspects, embodiments, and features of the invention, as described in further detail below.